package test;

import java.math.BigDecimal;
import java.math.BigInteger;
import java.text.MessageFormat;

import org.junit.Test;

public class Demo1 {
	@Test
	public void fun1(){
		/*
		 * 包含了占位符的字符串就是模板
		 * 占位符：{0}、{1}、{2}
		 * 可变参数，需要制定模板中占位符的值！有几个占位符就提供几个参数
		 */
		String s = MessageFormat.format("{0}或{1}错误", "用户名","密码");
		System.out.println(s);
		
	}
	/**
	 * 1000的阶乘
	 */
	@Test
	public void fun3(){
		BigInteger sum = BigInteger.valueOf(1);
		for(int i = 1;i<=1000;i++){
			BigInteger bi = BigInteger.valueOf(i);
			sum = sum.multiply(bi);
		}
		System.out.println(sum);
	}
	/**
	 *BigDecimal
	 *可以处理二进制运算导致的误差 
	 */
	@Test
	public void fun4(){
		//创建BigDecimal对象必须使用String构造器
		BigDecimal d1 = new BigDecimal("2.0");
		BigDecimal d2 = new BigDecimal("1.1");
		BigDecimal d3 = d1.subtract(d2);
		System.out.println(d3);
	}
}
